package com.nenude.corejava.ch12;

import java.io.File;
import java.io.IOException;

public class FileCreater {

	public static void main(String[] args) {
		// 使用file类创建一个新文件d:/temp/files/helo.txt;并进行改名hello.txt

		// windows 风格的分隔符号，反斜杠是特殊符号，特殊符号需要进行转义，两个反斜杠会输出一个反斜杠
		String pathname = "d:\\temp\\files\\hello.txt";

		// unix 和linux风格的分隔符号
		String path = "d:\\temp\\files\\temp";
		
		File filepath = new File(path);

		// 创建目录:mkdirs可以创建多级目录，mkdir可以创建单级目录
		boolean bool = filepath.mkdirs();
		if (bool) {
			System.out.println("目录创建成功");

		}
		//pathname = "d:/temp/files/helo.txt";
		File file = new File(pathname);
		try {
			if (!file.exists()) {
				// 创建新文件时，如果文件路径不存在或创建失败，抛出异常
				// 如果文件已经存在，则返回false
				boolean result = file.createNewFile();
				if (result) {
					System.out.println("新建文件成功！");
				} else {
					System.out.println("新建文件失败！");
				}
			} else {
				// System.out.println("文件已经存在，不重复创建！");
				boolean ret = file.delete();

				if (ret) {
					System.out.println("文件已经存在，执行文件删除");
				}
				boolean result = file.createNewFile();
				if (result) {
					System.out.println("新建文件成功！");
				} else {
					System.out.println("新建文件失败！");
				}
			}
			
			//修改文件名
			String newName="d:/temp/files/hello2.txt";
			File newFile=new File(newName);
			boolean r=file.renameTo(newFile);
			if(r){
				System.out.println("修改文件成功！");
			}else {
				System.out.println("修改失败！");
			}
			
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}
